The present invention relates generally to motion capture, and more particularly, to motion capture using primary and secondary markers to generate three-dimensional graphics and animation.
Motion capture systems are used to capture the movement of a real object and map it onto a computer generated object as a way of animating it. Such systems are often used in the production of motion pictures and video games for creating a digital representation of a person that is used as source data to create a computer graphics (CO) animation. In a typical system, an actor wears a suit having markers attached at various locations (e.g., having small reflective markers attached to the body and limbs) and digital cameras record the movement of the actor from different angles while illuminating the markers. The system then analyzes the images to determine the locations (e.g., as spatial coordinates) and orientation of the markers on the actor's suit in each frame. By tracking the locations of the markers, the system creates a spatial representation of the markers over time and builds a digital representation of the actor in motion. The motion is then applied to a digital model, which may then be textured and rendered to produce a complete CG representation of the actor and/or performance. This technique has been used by special effects companies to produce highly realistic animations in many popular movies.
An advantage of some motion capture systems over traditional animation techniques, such as keyframing, is the capability of real-time visualization. The production team can review the spatial representation of the actor's motion in real-time or near real-time, enabling the actor to alter the physical performance in order to capture optimal data. Moreover, motion capture systems detect subtle nuances of physical movement that cannot be easily reproduced using other animation techniques, thereby yielding data that more accurately reflect natural movement. As a result, animations using source material collected using a motion capture system will often exhibit a substantially more lifelike appearance.
Conventional methods of capturing motion data may be subject to time-consuming manual steps. For example, some methods utilize markers that are small reflective spheres. Lamps in the capture space illuminate the reflective spheres and cameras capture the resulting reflections. Since the markers are spherical, light from a single lamp can be reflected almost omni-directionally from the hemisphere associated with the incident light, with the result that the reflected light may be captured by many cameras placed in a variety of positions in the capture space. In this way, the spatial coordinates of the markers may be determined. Each data point must also be tracked individually from frame to frame to create a motion history with which to effect the desired animation. By the same reason that light thus reflected from spherical markers provide sharp and accurate data points in the capture space, the captured data points are relatively small and so may also be nearly identical in appearance. Distinguishing the individual captured data points can be very difficult and tracking individual data points from frame to frame may thus be greatly complicated. Because automatic tracking methods are problematic when the captured data points (i.e., markers) to be tracked are substantially indistinguishable, lengthy and resource-intensive manual processing may often be required instead to ensure that each captured data point is accurately distinguished and properly associated with itself from frame to frame. Moreover, large numbers of markers may also be required to adequately resolve the motions associated with the vertices of high-resolution 3-D surface meshes representing surfaces of animated CG actors, thus compounding the problems of automatic and manual tracking by sheer volume of data.
Accordingly, what is needed is a method and system that overcomes these significant problems with respect to marker identification and tracking found in the conventional systems.